You are here: Symbol Reference > Dew Namespace > Dew.Signal Namespace > Dew.Signal.Units Namespace > Classes > SignalUtils Class > SignalUtils Methods > SignalUtils.PhaseUnwrap Method
Dew Signal for .NET
ContentsIndexHome
PreviousUpNext
SignalUtils.PhaseUnwrap Method

Unwrap the phase of the phase spectrum.

Syntax
C#
Visual Basic
public static double PhaseUnwrap([In] TVec Src, [In] TVec Dst, TRunningPhase RunningPhase, double ActualZeroPadding, bool Radians, double Tolerance);

The phase spectrum in Src is unwrapped and the result is placed in Dst. RunningPhase defines how the unwrapped phased will be further processed. Tolerance defines the maximum change allowed between consecutive values, before the 360 (or 2*Pi) degrees is added (or subtracted). Tolerance must always be specified in degrees. 

If radians is True, the Src should contain the phase spectrum in radians, otherwise in degrees. If the time signal was padded with zeros, the ActualZeroPadding should hold the ratio: LengthAfterZeroPadding/LengthBeforeZeroPadding. ActualZeroPadding factor is needed to accurately determine the total phase delay. If phase delay is not an issue the ActualZeroPadding factor can be set to 1. 

The Src may not have central spectrum element as its last value. If the phase spectrum was obtained from FFT on a real data, the vector must be subranged before passed to the phase unwrapping routine. 

Phase unwrapping is extensively discussed in [1] (p. 790), especially because of its application in complex cepstrum estimation. 

References:  

[1] Discrete-time signal processing, Oppenheim and Schafer, Prentice-Hall, 1989.

Copyright (c) 1999-2024 by Dew Research. All rights reserved.
What do you think about this topic? Send feedback!